Stack Overflow Considered Harmful? The Impact of Copy&Paste on Android Application Security
نویسندگان
چکیده
Online programming discussion platforms such as Stack Overflow serve as a rich source of information for software developers. Available information include vibrant discussions and oftentimes ready-to-use code snippets. Previous research identified Stack Overflow as one of the most important information sources developers rely on. Anecdotes report that software developers copy and paste code snippets from those information sources for convenience reasons. Such behavior results in a constant flow of community-provided code snippets into production software. To date, the impact of this behaviour on code security is unknown. We answer this highly important question by quantifying the proliferation of security-related code snippets from Stack Overflow in Android applications available on Google Play. Access to the rich source of information available on Stack Overflow including ready-to-use code snippets provides huge benefits for software developers. However, when it comes to code security there are some caveats to bear in mind: Due to the complex nature of code security, it is very difficult to provide ready-to-use and secure solutions for every problem. Hence, integrating a security-related code snippet from Stack Overflow into production software requires caution and expertise. Unsurprisingly, we observed insecure code snippets being copied into Android applications millions of users install from Google Play every day. To quantitatively evaluate the extent of this observation, we scanned Stack Overflow for code snippets and evaluated their security score using a stochastic gradient descent classifier. In order to identify code reuse in Android applications, we applied state-of-the-art static analysis. Our results are alarming: 15.4% of the 1.3 million Android applications we analyzed, contained security-related code snippets from Stack Overflow. Out of these 97.9% contain at least one insecure code snippet.
منابع مشابه
A Manual Categorization of Android App Development Issues Using Stack Overflow Posts
The discussion of issues related to the development of mobile applications (apps) has gained more and more popularity on Q&A-platforms such as Stack Overflow.1 Barua et al. [1] stated that Android is among the topics with the largest increase in the number of posts on Stack Overflow. The success of a mobile application depends on the quality of the application. Lineares-Vasquez et al. [2] found...
متن کاملA Binary Rewriting Defense Against Stack based Buffer Overflow Attacks
Buffer overflow attack is the most common and arguably the most dangerous attack method used in Internet security breach incidents reported in the public literature. Various solutions have been developed to address the buffer overflow vulnerability problem in both research and commercial communities. Almost all the solutions that provide adequate protection against buffer overflow attacks are i...
متن کاملOn code reuse from StackOverflow: An exploratory study on Android apps
Context: Source code reuse has been widely accepted as a fundamental activity in software development. Recent studies showed that StackOverflow has emerged as one of the most popular resources for code reuse. Therefore, a plethora of work proposed ways to optimally ask questions, search for answers and find relevant code on StackOverflow. However, little work studies the impact of code reuse fr...
متن کاملSafer Operating System for Vehicle Telematics
Numerous failures of telematics system are caused by kernel stack overflow. Telematics systems use operating systems like Android that employs the Linux kernel which has a fixed size kernel stack. Unfortunately, nowadays there is no mechanism to avert the kernel from overflowing the stack. With the purpose of putting a stop to this fault, we present a dynamically sized kernel stack that knows h...
متن کاملEnhancing Transportation System Networks Reliability by Securer Operating System
More than a few failures of Transportation System Networks are caused by kernel stack overflow. Transportation System Networks use operating systems like Android that employs the Linux kernel which has a fixed size kernel stack. Unfortunately, nowadays there is no mechanism to avert the kernel from overflowing the stack. With the purpose of putting a stop to this fault, we present a dynamically...
متن کامل